﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.Caching;

namespace Acidaes.Caching.Velocity
{
    public interface IVelocityCache :ICacheProvider
    {
        Cache GetCache(string strCacheName);

        //CacheItemVersion Add(string key, object value);

        CacheItemVersion Add(string region, string key, Object value);

        CacheItemVersion Add(string region, string key, Object value, Tag[] tags);

        //CacheItemVersion Add(string region, string key, Object value, TimeSpan timeOut);

        CacheItemVersion Add(string region, string key, Object value, Tag[] tags, TimeSpan timeOut);

        //Object Get(string key);

        Object Get(string key, ref CacheItemVersion version);

        Object Get(string region, string key);

        Object Get(string region, string key, ref CacheItemVersion version);

        
    }
}
